<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Streams</title>
<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="../../index.html" title="Chapter 1. Boost.Beast">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="RatePolicy.html" title="RatePolicy">
<link rel="next" href="../design_choices.html" title="Design Choices">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="RatePolicy.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../design_choices.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="beast.concepts.streams"></a><a class="link" href="streams.html" title="Streams">Streams</a>
</h3></div></div></div>
<p>
        A stream in the context of Beast and networking, represents a full-duplex
        connection between two programs or hosts, where data represented as bytes
        may be received reliably in the same order they were written. Streams may
        support any combination of synchronous and/or asynchronous reading and writing.
      </p>
<p>
        Stream concepts are based on named requirements in networking:
      </p>
<h5>
<a name="beast.concepts.streams.h0"></a>
        <span class="phrase"><a name="beast.concepts.streams.Stream"></a></span><a class="link" href="streams.html#beast.concepts.streams.Stream">Stream</a>
      </h5>
<p>
        A type modeling <span class="bold"><strong>Stream</strong></span> meets either or both
        of the following requirements:
      </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
            <span class="bold"><strong>AsyncStream</strong></span>
          </li>
<li class="listitem">
            <span class="bold"><strong>SyncStream</strong></span>
          </li>
</ul></div>
<h5>
<a name="beast.concepts.streams.h1"></a>
        <span class="phrase"><a name="beast.concepts.streams.AsyncStream"></a></span><a class="link" href="streams.html#beast.concepts.streams.AsyncStream">AsyncStream</a>
      </h5>
<p>
        A type modeling <span class="bold"><strong>AsyncStream</strong></span> meets the following
        requirements:
      </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
            <a href="../../../../../../doc/html/boost_asio/reference/AsyncReadStream.html" target="_top"><span class="emphasis"><em>AsyncReadStream</em></span></a>
          </li>
<li class="listitem">
            <a href="../../../../../../doc/html/boost_asio/reference/AsyncWriteStream.html" target="_top"><span class="emphasis"><em>AsyncWriteStream</em></span></a>
          </li>
</ul></div>
<h5>
<a name="beast.concepts.streams.h2"></a>
        <span class="phrase"><a name="beast.concepts.streams.SyncStream"></a></span><a class="link" href="streams.html#beast.concepts.streams.SyncStream">SyncStream</a>
      </h5>
<p>
        A type modeling <span class="bold"><strong>SyncStream</strong></span> meets the following
        requirements:
      </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
            <a href="../../../../../../doc/html/boost_asio/reference/SyncReadStream.html" target="_top"><span class="emphasis"><em>SyncReadStream</em></span></a>
          </li>
<li class="listitem">
            <a href="../../../../../../doc/html/boost_asio/reference/SyncWriteStream.html" target="_top"><span class="emphasis"><em>SyncWriteStream</em></span></a>
          </li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright © 2016-2019 Vinnie
      Falco<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="RatePolicy.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../design_choices.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
